First i Last û funkcje - przyk│ad
W tym przyk│adzie zwracane s╣ warto£ci pola Nazwisko z pierwszego i ostatniego rekordu pobranego z tabeli Pracownicy.
W tym przyk│adzie wywo│ywana jest procedura WyliczPola, kt≤r╣ mo┐na znaleƒµ w przyk│adzie dotycz╣cym instrukcji SELECT.
Sub FirstLastX1()
Dim dbs As Database, rst As Recordset
' Zmodyfikuj ten wiersz tak, by £cie┐ka wskazywa│a
' na rzeczywist╣ bazΩ danych Northwind.
Set dbs = OpenDatabase("Northwind.mdb")
' Zwr≤µ warto£µ pola Nazwisko z pierwszego
' i ostatniego rekordu pobranego z tabeli.
Set rst = dbs.OpenRecordset("SELECT " _
& "First(Nazwisko) as Pierwszy, " _
& "Last(Nazwisko) as Ostatni FROM Pracownicy;")
' Zape│nij obiekt Recordset.
rst.MoveLast
' Wywo│aj procedurΩ WyliczPola w celu
' wydrukowania zawarto£ci obiektu Recordset. Przeka┐ obiekt
' Recordset i wymagan╣ szeroko£µ pola.
WyliczPola rst, 12
dbs.Close
End Sub
W nastΩpnym przyk│adzie por≤wnywane jest u┐ycie funkcji First i Last oraz funkcji Min i Max do znalezienia w tabeli Pracownicy najwcze£niejszej i najp≤ƒniejszej daty urodzin.
Sub FirstLastX2()
Dim dbs As Database, rst As Recordset
' Zmodyfikuj ten wiersz tak, by £cie┐ka wskazywa│a
' na rzeczywist╣ bazΩ danych Northwind.
Set dbs = OpenDatabase("Northwind.mdb")
' W tabeli Pracownicy znajdƒ najwcze£niejsz╣
' i najp≤ƒniejsz╣ datΩ urodzenia.
Set rst = dbs.OpenRecordset("SELECT " _
& "First(DataUrodzenia) as PierwszaDU, " _
& "Last(DataUrodzenia) as OstatniaDU " _
& "FROM Pracownicy;")
' Zape│nij obiekt Recordset.
rst.MoveLast
' Wywo│aj procedurΩ WyliczPola w celu
' wydrukowania zawarto£ci obiektu Recordset. Przeka┐ obiekt
' Recordset i wymagan╣ szeroko£µ pola.
WyliczPola rst, 12
Debug.Print
' W tabeli Pracownicy znajdƒ najwcze£niejsz╣
' i najp≤ƒniejsz╣ datΩ urodzenia.
Set rst = dbs.OpenRecordset("SELECT " _
& "Min(DataUrodzenia) as MinDU," _
& "Max(DataUrodzenia) as MaxDU " _
& "FROM Pracownicy;")
' Zape│nij obiekt Recordset.
rst.MoveLast
' Wywo│aj procedurΩ WyliczPola w celu
' wydrukowania zawarto£ci obiektu Recordset. Przeka┐ obiekt
' Recordset i wymagan╣ szeroko£µ pola.
WyliczPola rst, 12
dbs.Close
End Sub